package com.deyuanyun.pic.pipe.service;

import java.io.IOException;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.web.multipart.MultipartFile;

import com.deyuanyun.pic.common.dto.DTOResult;
import com.deyuanyun.pic.pipe.domain.exceldomain.CelbowImportDemo;
import com.deyuanyun.pic.pipe.domain.exceldomain.ElbowImportDemo;
import com.github.pagehelper.Page;

/**
 *
 *
 * @作者:严祥
 * @创建时间: 2015年8月25日
 * @类名称: PipeElbowService
 * @类说明:弯头接口
 *
 */
/**
 *
 * @作者:严祥
 * @创建时间: 2015年8月25日
 * @类名称: PipeElbowService
 * @类说明:
 *
 */
public interface PipeElbowService {

	/**
	 *
		 *
		 *@创建者:严祥
		 *@创建时间：2015年9月1日下午3:06:13
		 *@方法说明:根据参数查询弯头基本信息(包含冷热弯头)
		 *@参数:@param pipeLineId:管线ID
		 *@参数:@param pipeSegmentId:管段ID
		 *@参数:@param startMileage:起始里程
		 *@参数:@param endMileage:终止里程
		 *@参数:@param pageNum:页数
		 *@参数:@param pageSize:每页显示的最大数量
		 *@参数:@return
		 *@return:DTOResult
		 *
	 */
	public Page<HashMap<String, Object>> selectElbowBase(String pipeLineId,
			String pipeSegmentId,
			BigDecimal startMileage,BigDecimal endMileage,Integer pageNum,Integer pageSize);

	/**
	 *
		 *
		 *@创建者:严祥
		 *@创建时间：2015年8月25日下午8:46:23
		 *@方法说明:导出冷热弯头数据
		 *@参数:@param pipeLineId
		 *@参数:@param pipeSegmentId
		 *@参数:@param startMileage
		 *@参数:@param endMileage
		 *@return:void
		 *
	 */
	public List<List<String[]>> getDownloadElbow(String pipeLineId,
			String pipeSegmentId,
			BigDecimal startMileage,BigDecimal endMileage);


/**
 *
	 *
	 *@创建者:严祥
	 *@创建时间：2015年9月7日上午10:08:39
	 *@方法说明:根据弯头主键ID以及弯头类型查询详情
	 *@参数:@param elbowId：弯头主键ID
	 *@参数:@param source:类型(0:热煨弯头，1:冷弯头)
	 *@参数:@return
	 *@return:DTOResult
	 *
 */
	public DTOResult getDetailedByIdAndSource(String elbowId,Integer source);

	
	public boolean importElbowData(List<ElbowImportDemo> data) throws Exception;
	
	public boolean importCElbowData(List<CelbowImportDemo> data) throws Exception ;

	Page<HashMap<String,Object>> findPage(HashMap param );
	
	public int delElbowData(Map map);
	
	public int delCElbowData(Map map);
	
	public List<List<String[]>> excelExport(Map map);
}
